package com.hc.service;

import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;

/**
 * @author hs
 * @date 2021/05/06
 */
@Service
public class AsyncService {


    /**
     * 测试异步任务，我们先先该方法睡眠3秒，这时候controller层调用该方法就会等待3秒，那前端就会转圈圈3秒
     * 加上Async这个注解相当于一旦执行这个方法就会从线程池中创建一个新的线程来执行这里，这样用户就不会转圈圈3秒
     */
    @Async
    public void testAsyn(){
        try {
            Thread.sleep(3000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        System.out.println("异步任务执行完了！");
    }
}
